
* =============================================================================================== *
* Core funding and the performance of international organizations: Evidence from UNDP projects    *
* Authors: Mirko Heinzel, Bernhard Reinsberg, Giuseppe Zaccaria                                   *
* Version: 12.09.2024                                                                             *
* Stata 16.2                                                                                      *
* =============================================================================================== *

*install packages if necessary
*ssc install reghdfe
*ssc install ppmlhdfe
*ssc install blindschemes
*ssc install sum2docx
*ssc install estout
*net from https://raw.githubusercontent.com/xuyiqing/fect_stata/master


cd "Extract files here"

*************
***Article***
*************

*project-level

use "HRZ_RG_24_projects.dta", clear

*Table 1 (Output)

ppmlhdfe trans_value share_core, absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

ppmlhdfe trans_value share_core count_indicators count_donors, absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

ppmlhdfe trans_value share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare, absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

ppmlhdfe trans_value share_core count_indicators count_donors v2x_corr v2x_rule  v2x_libdem, absorb(country_sector year) cluster(country_sector)
estimates store m4, title()

ppmlhdfe trans_value share_core count_indicators count_donors distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country_sector)
estimates store m5, title()

ppmlhdfe trans_value share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country_sector)
estimates store m6, title()

estfe . m1 m2 m3 m4 m5 m6 , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3 m4 m5 m6  using UNDPtable1.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 


*Table 2 (Outcome)

ppmlhdfe achieved share_core, absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

ppmlhdfe achieved share_core count_indicators count_donors log_amount, absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

ppmlhdfe achieved share_core count_indicators count_donors log_amount hdi_national shdi log_pop cf_popshare, absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

ppmlhdfe achieved share_core count_indicators count_donors log_amount v2x_corr v2x_rule  v2x_libdem, absorb(country_sector year) cluster(country_sector)
estimates store m4, title()

ppmlhdfe achieved share_core count_indicators count_donors log_amount distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country_sector)
estimates store m5, title()

ppmlhdfe achieved share_core count_indicators count_donors log_amount hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country_sector)
estimates store m6, title()

estfe . m1 m2 m3 m4 m5 m6 , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3 m4 m5 m6  using UNDPtable2.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 

*Figure 1 (impact), core

use "HRZ_RG_24_subnat.dta", clear

fect shdi , treat(bn_sum_core) unit(region_fe) time(year) method("ife") se preperiod(-10) offperiod(5) cov(all_non_core)

fect shdi , treat(bn_sum_core) unit(region_fe) time(year) method("ife") se equiTest preperiod(-10) offperiod(0) cov(all_non_core)

fect shdi , treat(bn_sum_core) unit(region_fe) time(year) method("ife") se placeboTest preperiod(-10) offperiod(5) cov(all_non_core)


*Figure 2 (impact), non-core

fect shdi , treat(all_non_core) unit(region_fe) time(year) method("ife") se preperiod(-10) offperiod(5) cov(bn_sum_core)

fect shdi , treat(all_non_core) unit(region_fe) time(year) method("ife") se equiTest preperiod(-10) offperiod(0) cov(bn_sum_core)

fect shdi , treat(all_non_core) unit(region_fe) time(year) method("ife") se placeboTest preperiod(-10) offperiod(5) cov(bn_sum_core)


**************
***Appendix***
**************

*descriptive statistics

*Table A1 (output & outcome)

use "HRZ_RG_24_projects.dta", clear

sum2docx trans_value achieved share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member using tableA1_desc.docx if sample==1, stats(N mean sd min max)

*Table A2 (impact)

use "HRZ_RG_24_subnat.dta", clear

sum2docx shdi bn_sum_core all_non_core using tableA2_desc.docx if sample==1, stats(N mean sd min max)

********************
*Output Performance*
********************

*Table A3

reghdfe log_amount share_core, absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

reghdfe log_amount share_core count_indicators count_donors, absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

reghdfe log_amount share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

estfe . m1 m2 m3  , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3   using UNDPtableA3.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se r2 label drop(_cons)  indicate(`r(indicate_fe)') 


*Table A4

ppmlhdfe amount_per_objective share_core, absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

ppmlhdfe amount_per_objective share_core  count_donors, absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

ppmlhdfe amount_per_objective share_core count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

estfe . m1 m2 m3  , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3  using UNDPtableA4.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 


*Table A5

ppmlhdfe trans_value core_bin, absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

ppmlhdfe trans_value core_bin count_indicators count_donors, absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

ppmlhdfe trans_value core_bin count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

estfe . m1 m2 m3  , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3  using UNDPtableA5.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 


*Table A6

ppmlhdfe trans_value share_core count_indicators count_donors, absorb(country sector_5 year) cluster(country_sector)
estimates store m1, title()

ppmlhdfe trans_value share_core count_indicators count_donors, absorb(country_sector country_year) cluster(country_sector)
estimates store m2, title()

ppmlhdfe trans_value share_core count_indicators count_donors, absorb(country_sector country_year sector_year) cluster(country_sector)
estimates store m3, title()

estfe . m1 m2 m3  , labels(country "Country fixed effects" country_sector "Country-sector fixed effects" country_year "Country-year fixed effects" sector_5 "Sector fixed effects" sector_year "Sector-year fixed effects" year "Year fixed effects") 

esttab m1 m2 m3  using UNDPtableA6.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 


*Table A7

ppmlhdfe trans_value share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country)
estimates store m1, title()

ppmlhdfe trans_value share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country_year)
estimates store m2, title()

ppmlhdfe trans_value share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(sector_5)
estimates store m3, title()

ppmlhdfe trans_value share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(sector_year)
estimates store m4, title()

estfe . m1 m2 m3 m4 , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3 m4 using UNDPtableA7.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 

*Table A8

ppmlhdfe trans_value share_core count_donors hdi_national shdi log_pop cf_popshare e_wbgi_cce e_wbgi_gee e_wbgi_pve e_wbgi_rle e_wbgi_rqe e_wbgi_vae distance_donors5 distance_board board_member , absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

ppmlhdfe trans_value share_core count_donors hdi_national shdi log_pop cf_popshare v2x_corr e_fh_cl e_fh_pr e_fh_rol distance_donors5 distance_board board_member , absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

ppmlhdfe trans_value share_core count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member log_gdppc , absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

estfe . m1 m2 m3  , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3  using UNDPtableA8.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 

*Table A9

ppmlhdfe trans_value share_core [pw = pweight], absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

ppmlhdfe trans_value share_core count_indicators count_donors [pw = pweight], absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

ppmlhdfe trans_value share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member [pw = pweight], absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

estfe . m1 m2 m3  , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3   using UNDPtableA9.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 

*Table A10
reghdfe custodian share_core, absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

reghdfe custodian share_core count_indicators count_donors, absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

reghdfe custodian share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

estfe . m1 m2 m3  , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3   using UNDPtableA10.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se r2 label drop(_cons)  indicate(`r(indicate_fe)') 


*Table A11

ppmlhdfe trans_value bin_un bin_mdbs bin_eu bin_private bin_ngo bin_countries,  absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

ppmlhdfe trans_value bin_un bin_mdbs bin_eu bin_private bin_ngo bin_countries count_indicators count_donors , absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

ppmlhdfe trans_value bin_un bin_mdbs bin_eu bin_private bin_ngo bin_countries count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member , absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

ppmlhdfe trans_value share_core bin_un bin_mdbs bin_eu bin_private bin_ngo bin_countries count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member , absorb(country_sector year) cluster(country_sector)
estimates store m4, title()

estfe . m1 m2 m3 m4 , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3 m4  using UNDPtableA11.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 


*********************
*Outcome Performance*
*********************

graph bar (count) count , over(achieved_per) scheme(plotplainblind)

hist achieved_per, scheme(lean2) freq

*Table A12

reghdfe achieved_bin share_core, absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

reghdfe achieved_bin share_core count_indicators count_donors log_amount, absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

reghdfe achieved_bin share_core count_indicators log_amount count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

estfe . m1 m2 m3  , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3  using UNDPtableA12.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se r2 label drop(_cons)  indicate(`r(indicate_fe)') 

*Table A13

reghdfe achieved share_core, absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

reghdfe achieved share_core count_indicators count_donors log_amount, absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

reghdfe achieved share_core count_indicators count_donors log_amount hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

estfe . m1 m2 m3  , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3  using UNDPtableA13.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se r2 label drop(_cons)  indicate(`r(indicate_fe)') 

*Table A14

ppmlhdfe achieved core_bin, absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

ppmlhdfe achieved core_bin count_indicators count_donors log_amount, absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

ppmlhdfe achieved core_bin count_indicators count_donors log_amount hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

estfe . m1 m2 m3  , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3  using UNDPtableA14.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 

*Table A15

ppmlhdfe achieved share_core count_indicators count_donors log_amount, absorb(country sector_5 year) cluster(country_sector)
estimates store m1, title()

ppmlhdfe achieved share_core count_indicators count_donors log_amount, absorb(country_sector country_year) cluster(country_sector)
estimates store m2, title()

ppmlhdfe achieved share_core count_indicators count_donors log_amount, absorb(country_sector country_year sector_year) cluster(country_sector)
estimates store m3, title()

estfe . m1 m2 m3  , labels(country "Country fixed effects" country_sector "Country-sector fixed effects" country_year "Country-year fixed effects" sector_5 "Sector fixed effects" sector_year "Sector-year fixed effects" year "Year fixed effects") 

esttab m1 m2 m3  using UNDPtableA15.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 

*Table A16

ppmlhdfe achieved share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country)
estimates store m1, title()

ppmlhdfe achieved share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(country_year)
estimates store m2, title()

ppmlhdfe achieved share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(sector_5)
estimates store m3, title()

ppmlhdfe achieved share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member, absorb(country_sector year) cluster(sector_year)
estimates store m4, title()

estfe . m1 m2 m3 m4 , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3 m4 using UNDPtableA16.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 

*Table A17

ppmlhdfe achieved core count_donors hdi_national shdi log_pop cf_popshare e_wbgi_cce e_wbgi_gee e_wbgi_pve e_wbgi_rle e_wbgi_rqe e_wbgi_vae distance_donors5 distance_board board_member log_gdppc, absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

ppmlhdfe achieved core count_donors hdi_national shdi log_pop cf_popshare v2x_corr e_fh_cl e_fh_pr e_fh_rol distance_donors5 distance_board board_member log_gdppc, absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

ppmlhdfe achieved core count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member log_gdppc , absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

estfe . m1 m2 m3  , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3  using UNDPtableA17.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 


*Table A18

cmp setup
eststo m1: cmp (log_amount = share_core  i.country_sector i.year) (achieved =   share_core  i.country_sector i.year) , indicators($cmp_cont $cmp_cont) iterate(50) difficult cl(cntry_fe)

eststo m2: cmp (log_amount = share_core count_indicators count_donors  i.country_sector i.year) (achieved =   share_core count_indicators count_donors i.country_sector i.year) , indicators($cmp_cont $cmp_cont) iterate(50) difficult cl(cntry_fe)

eststo m3: cmp (log_amount = share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member i.country_sector i.year) (achieved =   share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member i.country_sector i.year) , indicators($cmp_cont $cmp_cont) iterate(50) difficult cl(cntry_fe)

estfe . m1 m2 m3  , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3  using UNDPtableA18.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se r2 label drop(_cons)  indicate(`r(indicate_fe)') 


*Table A19

ppmlhdfe achieved share_core [pw = pweight], absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

ppmlhdfe achieved share_core count_indicators count_donors [pw = pweight], absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

ppmlhdfe achieved share_core count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member [pw = pweight], absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

estfe . m1 m2 m3  , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3   using UNDPtableA19.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 

*Table A20

use "HRZ_RG_24_disclose.dta", clear

reghdfe disclosure share_core, noabsorb cluster(country_sector)
estimates store m1, title()

reghdfe disclosure share_core, absorb(year) cluster(country_sector)
estimates store m2, title()

reghdfe disclosure share_core, absorb(country_sector) cluster(country_sector)
estimates store m3, title()

reghdfe disclosure share_core, absorb(country_sector year) cluster(country_sector)
estimates store m4, title()

estfe . m1 m2 m3 m4 , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3 m4 using UNDPtableA20.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 


*Table A21
use "HRZ_RG_24_projects.dta", clear

ppmlhdfe achieved bin_un bin_mdbs bin_eu bin_private bin_ngo bin_countries,  absorb(country_sector year) cluster(country_sector)
estimates store m1, title()

ppmlhdfe achieved bin_un bin_mdbs bin_eu bin_private bin_ngo bin_countries count_indicators count_donors , absorb(country_sector year) cluster(country_sector)
estimates store m2, title()

ppmlhdfe achieved bin_un bin_mdbs bin_eu bin_private bin_ngo bin_countries count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member , absorb(country_sector year) cluster(country_sector)
estimates store m3, title()

ppmlhdfe achieved share_core bin_un bin_mdbs bin_eu bin_private bin_ngo bin_countries count_indicators count_donors hdi_national shdi log_pop cf_popshare v2x_corr v2x_rule  v2x_libdem distance_donors5 distance_board board_member , absorb(country_sector year) cluster(country_sector)
estimates store m4, title()

estfe . m1 m2 m3 m4 , labels(country_sector "Country-sector fixed effects" year "Year fixed effects") 

esttab m1 m2 m3 m4  using UNDPtableA20.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se pr2 label drop(_cons)  indicate(`r(indicate_fe)') 


********************
*Impact Performance*
********************

*Table A22
use "HRZ_RG_24_subnat.dta", clear

reghdfe shdi lag_bn_sum_core , absorb(gdlcode year ) cluster(gdlcode)
estimates store m1, title()

reghdfe shdi  lag_non_core, absorb(gdlcode year ) cluster(gdlcode)
estimates store m2, title()

reghdfe shdi  lag_bn_sum_core lag_non_core, absorb(gdlcode year ) cluster(gdlcode)
estimates store m3, title()

reghdfe shdi  lag_bn_sum_core##lag_non_core, absorb(gdlcode year ) cluster(gdlcode)
estimates store m4, title()

estfe . m1 m2 m3 m4  , labels(gdlcode "Sub-region fixed effects" year "Year fixed effects") 

esttab m1 m2 m3 m4   using UNDPtableIMP1.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se r2 label drop(_cons)  indicate(`r(indicate_fe)') 

*Table A23

reghdfe shdi lag_sum_core , absorb(gdlcode year ) cluster(gdlcode)
estimates store m1, title()

reghdfe shdi  lag_sum_em, absorb(gdlcode year ) cluster(gdlcode)
estimates store m2, title()

reghdfe shdi  lag_sum_core lag_sum_em, absorb(gdlcode year ) cluster(gdlcode)
estimates store m3, title()

reghdfe shdi  c.lag_sum_core##c.lag_sum_em, absorb(gdlcode year ) cluster(gdlcode)
estimates store m4, title()

estfe . m1 m2 m3 m4  , labels(gdlcode "Sub-region fixed effects" year "Year fixed effects") 

esttab m1 m2 m3 m4   using UNDPtableIMP2.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se r2 label drop(_cons)  indicate(`r(indicate_fe)') 

*Table A24

reghdfe shdi lag_bn_sum_core if lag_bn_sum_all==1 , absorb( gdlcode ) cluster(gdlcode)
estimates store m1, title()

reghdfe shdi lag_bn_sum_core if lag_bn_sum_all==1, absorb( gdlcode year) cluster(gdlcode)
estimates store m2, title()

estfe . m1 m2   , labels(gdlcode "Sub-region fixed effects" year "Year fixed effects") 

esttab m1 m2    using UNDPtableIMP3.rtf, star(+ 0.1 * 0.05 ** 0.01 *** 0.001) b(4) ///
se r2 label drop(_cons)  indicate(`r(indicate_fe)') 


*Figure A2

fect shdi , treat(all_proj) unit(region_fe) time(year) method("ife") se preperiod(-10) offperiod(5) 

*Figure A3

fect shdi , treat(all_proj) unit(region_fe) time(year) method("ife") se equiTest preperiod(-10) offperiod(0) 

*Figure A4

fect shdi , treat(bn_sum_core) unit(region_fe) time(year) method("fe") se preperiod(-10) offperiod(5) cov(all_non_core)

*Figure A5

fect shdi , treat(all_non_core) unit(region_fe) time(year) method("fe") se preperiod(-10) offperiod(5) cov(bn_sum_core)

*Figure A6

fect edindex , treat(bn_sum_core) unit(region_fe) time(year) method("ife") se preperiod(-10) offperiod(5) cov(all_non_core)

*Figure A7

fect edindex , treat(all_non_core) unit(region_fe) time(year) method("ife") se preperiod(-10) offperiod(5) cov(bn_sum_core)

*Figure A8

fect healthindex , treat(bn_sum_core) unit(region_fe) time(year) method("ife") se preperiod(-10) offperiod(5) cov(all_non_core)

*Figure A9

fect healthindex , treat(all_non_core) unit(region_fe) time(year) method("ife") se preperiod(-10) offperiod(5) cov(bn_sum_core)

*Figure A10
fect incindex , treat(bn_sum_core) unit(region_fe) time(year) method("ife") se preperiod(-10) offperiod(5) cov(all_non_core)

*Figure A11
fect incindex , treat(all_non_core) unit(region_fe) time(year) method("ife") se preperiod(-10) offperiod(5) cov(bn_sum_core)





